linux的内核编译和驱动安装 |
您所在的位置:网站首页 › linux 内核编译 › linux的内核编译和驱动安装 |
#uname -r 显示内核的版本号 一. 内核编译 1. 什么是内核编译 将内核源码转换为目标程序的过程称之为内核编译,在编译过程可以定制内核的功能 2. 内核编译的理由 (1) 重新定制内核功能 (2) 给内核打补丁 (3) 安装硬件驱动程序 3. 编译2.4内核 (1) 完全编译 -准备工作 a. 获取2.4内核源码 -从www.kernel.org下载或从安装光盘中获取 b. 安装gcc等编译工具 #rpm -ivh gcc-3.2.5-5.i386.rpm ncurses4-5.0-11.i386.rpm ncurses-devel-5.3-4.i386.rpm -解压缩内核源码 a. 如果从www.kernel.org下载的源码,可用tar解压 #tar -xzvf/-xjvf *.tar.* -C /usr/src b. 如果从安装光盘中获取的源,可用rpm解压 #rpm -ivh kernel-source-版本号... -修改内核版本号 #vi /usr/src/内核源码目录/Makefile VERSION=数字 PATCHLEVEL=数字 SUBLEVEL=数字 EXTRAVERSION=字符串 ............... 注:如果要覆盖当前内核将版本号修改成与当前内核一致 -定制内核功能 #cd /usr/src/内核源码目录 #make mrproper //清除上次编译留下垃圾文件 #make clean //清除残留文件 #make menuconfig //如果想在当前内核的基础进行配置,可复制/boot目录的"config-内核版本号"到内核源码目录下,取名为.config\ #cp /boot/config-2.4.20-8 /usr/src/linux-2.4.20-8/.config #make dep //产生依赖关系 -生成内核文件 #make bzImage -编译和安装内核模块 #make modules #make modules_install(安装到/lib/modules/..) -安装内核 #make install(安装到/boot) (2) 编译内核部分模块 -准备工作 a. 获取内核源码 b. 安装gcc相关编译工具 -解压缩内核源码 ..... -修改版本号与当前内核一致 #cd /usr/src/内核源码解压目录 #vi Makefile ....... ........ -定制内核功能 #make mrproper #make clean #cp /boot/config-版本号 ./.config #make menuconfig #make dep -编译和安装内核模块 #make modules SUBDIRS=路径 #cp 源路径/*.o /lib/modules/内核版本号/kernel/.... #depmod -a #p#副标题#e# 4. 编译2.6内核(RHEL) (1) 完全编译2.6内核 -准备工作 a. 获取内核源码(建议不用光盘中的源码) b. 安装gcc相关编译工具 -解压缩内核源码 #tar -xzvf/-xjvf *.tar.gz/*.tar.bz -C /usr/src -修改内核版本号 #cd /usr/src/内核源码解压缩目录 #vi Makefile ........... -定制内核功能 #make mrproper #make menuconfig -编译内核及模块 #make -安装内核与模块 #make modules_install #make install (2) 编译内核部分模块 -准备工作 a. 获取内核源码(建议不用光盘中的源码) b. 安装gcc相关编译工具 -解压缩内核源码 #tar -xzvf/-xjvf *.tar.gz/*.tar.bz -C /usr/src -修改内核版本号与当前内核一致 ....... -定制内核功能 #make mrproper #make menuconfig -编译内核模块 #make modules SUBDIRS=路径 -安装内核模块 #cp 源路径/*.o /lib/modules/.... #depmod -a 注:-lsmod //查看当前内核已加载的模块 -modprobe //加载模块,且自动解决依赖关系 -insmod //加载模块,手工解决依赖关系 -rmmod //卸载模块 -modinfo //查看指定模块的信息 二. 安装设备驱动程序 1. 设备分类 (1) 块设备 (2) 字符设备 (3) 管道设备 2. Linux设备管理层次 (1) 面向用户---设备文件 (2) 面向设备---驱动程序 注:mknod用于创建设备文件,格式为:mknod 设备文件名 类型 主设备号 从设备号 3. 驱动程序的安装 (1) 自动安装 如果所安装的硬件驱动是系统自带的,则在安装系统时或在启动系统时会自动安装驱动 注:linux系统每次启动时都会启动kudzu服务,利用该服务来检测新硬件 (2) 手工安装 -获取硬件的驱动程序 -解压缩源码包、并查看说明 -编译 -安装 -加载模块 实例:安装D-LINK 530TX网卡驱动 #tar -xzvf 530tx.tar.gz #cd 530tx #make #mkae install #modprobe 530tx 关键词标签:linux,内核编译,驱动安 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |